package com.wn;

import com.github.xiaoymin.knife4j.spring.annotations.EnableKnife4j;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.openfeign.EnableFeignClients;
import org.springframework.context.annotation.Bean;
import org.springframework.web.client.RestTemplate;
import springfox.documentation.swagger2.annotations.EnableSwagger2WebMvc;

/**
 * @author yellow Docter
 * @date 2023 -02-20
 * @desc
 *
 *  进行远程调用：
 *
 *    portal服务调用       restTemplate 调用   member-service服务
 *    1、创建 restTemplate 添加到ioc容器中
 *    2、controller中进行调用
 *    3、返回结果
 *
 *   restTemplate 是中间件 解决服务之间的通讯
 *
 *   RestTemplate 和 RedisTemplate 区别 ?
 *   Template 模板
 *          RestTemplate rest调用模板
 *          RedisTemplate redis调用模板
 *          XXXTemplate   xxx调用模板，封装好,提供了很多方法

 */
@EnableFeignClients   //开启 feignclient
@EnableKnife4j
@EnableSwagger2WebMvc    //兼容低版本
@SpringBootApplication
class PortalApplication {

    public static void main(String[] args) {
        SpringApplication.run(PortalApplication.class,args);
    }

    @Bean
    public RestTemplate restTemplate(){
        return new RestTemplate();
    }

}
